package com.wondertek.poms.dao.vo;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.wondertek.poms.common.utils.validate.GroupType;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.Range;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.groups.Default;

/**
 * <p><b>ContentWhiteVo Description:</b> ContentWhiteVo类  对应 CONTENT_WHITE-白名单表 表</p>
 * @author 窦再兴
 * <p><b>DATE</b> 2020-12-03 10:19:26</p>
 */
 @Data
 @JsonInclude(JsonInclude.Include.NON_NULL)
public class   ContentWhiteVo {

	/**
	 * <b>Fields</b> id : 主键ID
	 */
	private Long id;

	/**
	 * <b>Fields</b> contentId : 内容id
	 */
	@Valid @NotBlank(message = "内容id不能为空", groups = {Default.class})
	@Length(message = "内容id长度不能超过255个字节", max=255, groups = {Default.class, GroupType.Update.class})
	private String contentId;

	/**
	 * <b>Fields</b> packageId : 二级产品id
	 */
	private Long packageId;

	/**
	 * <b>Fields</b> prdInfoId : 商品包id
	 */
	@Valid
	@NotNull(message = "商品包id不能为空", groups = {Default.class})
	private Long prdInfoId;

	/**
	 * <b>Fields</b> contentId : 内容名称
	 */
	private String contentName;

	/**
	 * <b>Fields</b> packageId : 二级产品名称
	 */
	private String packageName;

	/**
	 * <b>Fields</b> prdInfoId : 商品包名称
	 */
	@NotBlank(message = "商品包名称不能为空", groups = {Default.class})
	private String prdInfoName;

	/**
	 * <b>Fields</b> remarks : 备注
	 */
	private String remarks;

	/**
	 * <b>Fields</b> createdBy : 创建人
	 */
	private String createdBy;

	/**
	 * <b>Fields</b> createdTime : 创建开始时间
	 */
	private String createdStartTime;
	/**
	 * <b>Fields</b> createdTime : 创建结束时间
	 */
	private String createdEndTime;
	/**
	 * <b>Fields</b> createdTime : 创建时间
	 */
	private String createdTime;

	/**
	 * <b>Fields</b> updatedBy : 更新人
	 */
	private String updatedBy;

	/**
	 * <b>Fields</b> updatedTime : 更新时间
	 */
	private String updatedTime;

	/**
	 * <b>Fields</b> deleted : 是否有效 0正常 1删除 2停用
	 */
	@Range(message = "是否有效 0正常 1删除 2停用的范围是[0-9]", min=0, max=9, groups = {Default.class})
	private Integer delete=0;
}